<?php

class Application_Model_ProdutoMapper
{
	public $tbProduto;
	
	public function __construct()
	{
		$this->tbProduto = new Application_Model_DbTable_Produto();
	}
	
	public function listarProdutosDaCategoria($idCategoria)
	{
		$lista = $this->tbProduto->fetchAll("id_categoria =".$idCategoria)->toArray();
		return $lista;
	}
	
	public function cadastrarNovoProduto(Application_Model_Produto $produto)
	{
		$novoProduto = new Application_Model_Produto();
		$novoProduto = $produto;
		
		try
		{
			$produto = array(
					"id_produto"	=> trim($produto->getIdProduto()),
					"nome"			=> $produto->getNome(),
					"descricao"		=> $produto->getDescricao(),
					"preco"			=> trim($produto->getPreco()),
					"imagem"		=> trim($produto->getImagem()),
					"id_categoria"	=> trim($produto->getIdCategoria()),
					);
				
			return  $this->tbProduto->insert($produto);
				
		} catch (Zend_Exception $e)
		{
			echo "ERR: " . $e->getMessage();
		}
		
	}
	
	public function excluir($id)
	{
		var_dump($id);
		
		return $this->tbProduto->delete("id_produto = {$id}");
	}
	
	public function listarTodosProdutos()
	{
		return $this->tbProduto->fetchAll()->toArray();
	}
	
	public function buscarPeloId($id){
		
		return $this->tbProduto->find($id)->toArray();
		
	}
	
	public function atualizar(Application_Model_Produto $produto)
	{
		$id = $produto->getIdProduto();
		
		$produtoModel = array(
				"nome" => $produto->getNome(),
				"descricao" => $produto->getDescricao(),
				"preco" => $produto->getPreco(),	
				);
		
		return $this->tbProduto->update($produtoModel, "id_produto ={$id}");
	}


}

